Skip to main content

变量边界及初始值设置模块手册

1. 模块概述

模块名称:变量边界及初始值设置模块

功能说明:此模块是CFD仿真的核心配置环节,用于为求解变量(压力、速度、相分数、输运标量等)设置初始条件和边界条件。边界条件和初始值共同构成定解问题,是保证仿真具有唯一正确解的数学基础。

物理意义

  • 初始条件:定义仿真开始时(t=0)整个计算域内各变量的分布
  • 边界条件:定义计算域边界上变量的行为,描述外部环境对计算域的影响

配置原则

  1. 适定性原则:必须为每个求解变量提供足够且不矛盾的初始边界条件
  2. 物理真实性原则:边界条件应反映真实的物理环境
  3. 数值稳定性原则:边界条件设置应避免导致数值计算发散

2. 变量选择与界面布局

2.1. 变量标签栏

功能说明:这是一个标签式界面,允许用户分别为五个主要变量类别设置初始值和边界条件:

  • 压力:静压或表压场
  • 速度:速度矢量场(u, v, w)
  • 1号流体相:第1种流体(如water)的体积分数场
  • 2号流体相:第2种流体(如air)的体积分数场
  • 输运项:运输项的相分数场
  • 温度:温度场

操作方式:点击相应标签(如"压力"、"速度")切换到对应变量的设置界面。

2.2. 注意点

界面功能:软件会根据所选择的求解器,自动开放对应的边界条件,若找不到对应的边界条件,请检查求解器选择项

3. 内部初始场设置

3.1. 压力初始场

参数含义:定义整个计算域内压力的初始值 单位:帕斯卡(Pa) 设置说明

  • 举例:设置初始为0表示初始时刻整个计算域的压力为0 Pa

物理考虑

  1. 压力场的物理意义:此处压力场并不是总压,而是(总压 - rho * g * h)
  2. 压力参考点:对于不可压缩流,压力值可差一个常数,通常设置总压的参考压力点

3.2. 其他变量初始场(切换标签后可见)

速度初始场

  • 设置初始速度矢量 (u, v, w)
  • 通常初始速度为0,除非模拟启动流或已发展流动

相分数初始场

  • 在"初始相场设置"模块中详细定义
  • 此处可能只设置全局默认值

输运项初始场

  • 设置标量(浓度、温度、湍动能等)的初始分布

4. 边界条件设置

4.1. 边界选择与列表

功能说明

  • 软件会自动识别并列出当前计算域中已定义的边界类型

操作逻辑

  1. 从列表中选择一个边界(如OUTLET)
  2. 为该边界设置边界类型和参数值
  3. 切换到另一个边界(如WALLS)继续设置

4.2. 边界类型选项

4.2.1. 固定值

物理意义:边界上的变量值固定为给定常数 应用场景

  • 压力:指定入口/出口压力
  • 速度:指定入口速度(入口边界)
  • 相分数:指定边界处的相组成
  • 温度:指定边界处的温度
  • 输运项:指定边界处的浓度

4.2.2. 固定梯度

物理意义:边界上变量的法向梯度固定 应用场景

  • 压力:零梯度(出口常用)
  • 速度:指定剪切速率(极少使用)
  • 相分数:零梯度(壁面边界常用)
  • 输运项:零梯度(壁面边界常用)

4.2.3. 自定义

功能说明:通过输入txt文件,将其作为边界条件 应用场景

  • 随时间变化的边界条件(脉动流)
  • 空间变化的边界条件(非均匀入口)
  • 参考算例:FSI-07-Simple_Ship_Boundary_Change
  • 参考例子:U_boundary_time.txt表示随时间变化
  • 参考例子:U_boundary_z.txt表示随z坐标变化
  • 参考例子:U_boundary_time_z.txt表示同时随z坐标和时间变化

4.2.4. 局部固体

功能说明:若边界部分有固体,需要将其设置为局部固体边界 软件处理:若该区域局部被固体覆盖,则会将被覆盖的边界面作为无滑移壁面边界 应用场景

  • 部分堵塞的管道
  • 过滤器或格栅

4.2.5. 周期性边界

物理意义:边界上的值与另一对应边界上的值相等(周期性条件) 应用场景

  • 减少计算域大小(如管流的周期性截面)
  • 无限阵列模拟(如管束、翅片阵列)

4.2.6. 出口边界

特殊说明:这是一个预定义的边界类型,通常自动处理为:

  • 压力:出流为零梯度,入流为固定压力值
  • 速度:零梯度
  • 其他变量:零梯度

4.3. 边界值设置

参数含义:根据选定的边界类型,设置相应的值或参数 当前示例

  • 边界:OUTLET
  • 值:0 Pa(出口表压为0,对应大气压)

6. 配置流程与示例

6.1. 标准配置流程

  1. 切换变量标签:从压力、速度、相分数、输运项中选择要设置的变量
  2. 设置内部初始场:为整个计算域指定该变量的初始值
  3. 选择边界:从边界列表中选择一个边界块(如OUTLET)
  4. 选择边界类型:根据物理需求选择边界类型
  5. 设置边界值:输入相应的值或参数
  6. 重复3-5:为所有边界设置该变量的边界条件
  7. 切换变量:重复2-6为其他变量设置边界条件

6.2. 示例:管道流动边界条件设置

物理场景:水平圆管,左侧入口,右侧出口,管壁为壁面

6.2.1. 压力边界设置

  1. 切换到"压力"标签
  2. 内部初始场:0 Pa(整个域初始压力为大气压)
  3. 边界"INLET"
    • 类型:固定梯度
    • 值:0 Pa/m(入口压力法向梯度为0)
  4. 边界"OUTLET"
    • 类型:固定值
    • 值:0 Pa(出口压力为大气压)
  5. 边界"WALLS"
    • 类型:固定梯度
    • 值:0 Pa/m(壁面压力法向梯度为0)

6.2.2. 速度边界设置

  1. 切换到"速度"标签
  2. 内部初始场:(0, 0, 0)(初始静止)
  3. 边界"INLET"
    • 类型:固定值
    • 值:(1.0, 0, 0)(x方向1 m/s)
  4. 边界"OUTLET"
    • 类型:固定梯度
    • 值:(0, 0, 0)(出口速度零梯度)
  5. 边界"WALLS"
    • 类型:固定值
    • 值:(0, 0, 0)(无滑移壁面)

6.2.3. 相分数边界设置(水-空气两相流)

  1. 切换到"1号流体相(water)"标签

  2. 内部初始场:1(管道充满水)

  3. 边界"INLET"

    • 类型:固定值
    • 值:1(入口流入水)
  4. 边界"OUTLET"

    • 类型:零梯度或对流出口
  5. 边界"WALLS"

    • 类型:零梯度
  6. 切换到"2号流体相(air)"标签

    • 系统通常自动计算互补值(1-α_water)

7. 边界条件组合的物理一致性

7.1. 必须满足的约束条件

  1. 质量守恒:入口总质量流量 = 出口总质量流量 + 累积量
  2. 压力-速度协调:避免过压(over-specified)或欠压(under-specified)
  3. 相分数协调:所有相的分数和为1,边界条件需保持一致

7.2. 推荐的边界条件组合

流动类型压力边界速度边界推荐原因
强制对流(管道)出口:固定压力入口:零梯度入口:固定速度出口:零梯度最稳定,易于收敛
自然对流所有壁面:零梯度所有壁面:无滑移压力由浮力驱动
开口容器流动自由表面:固定压力底部:零梯度入口(若有):固定速度壁面:无滑移模拟大气压力作用
周期性流动周期性边界周期性边界减少计算域

7.3. 避免的边界条件组合

  1. 同时指定入口压力和入口速度:过约束,可能导致发散
  2. 出口无约束:欠约束,压力场可能漂移
  3. 矛盾的相分数边界:如入口同时指定水和空气都为1

8. 常见问题与解决方案

8.1. 计算发散

可能原因

  1. 边界条件物理上不合理(如入口压力远大于出口压力)
  2. 初始场与边界条件差距过大
  3. 压力-速度边界条件过约束

解决方案

  1. 检查压力梯度是否合理,减小压差
  2. 设置更接近稳态的初始场
  3. 确保只指定压力或速度中的一个(在给定边界)

8.2. 回流问题

现象:出口边界出现反向流动 原因:出口压力设置过高或下游有障碍

解决方案

  1. 降低出口压力设置
  2. 使用离散模块反流修正系数
  3. 延长出口段或调整几何

8.3. 质量不守恒

现象:计算域内质量不断增加或减少 原因

  1. 入口和出口流量不平衡
  2. 相分数边界条件导致相产生/消失

解决方案

  1. 检查并调整入口/出口速度或压力
  2. 验证相分数边界条件的物理合理性
  3. 启用质量守恒监控和修正

8.4. 壁面附近异常

现象:壁面附近速度或压力异常 原因

  1. 壁面边界条件类型错误
  2. 近壁面网格太粗

解决方案

  1. 确认壁面使用正确边界条件(无滑移为固定值0)
  2. 在壁面附近加密网格